#include <stdio.h>
// 尽可能获取 42元素的方法
int main()
{
    char arr[5][3] = {
        {11, 12, 13},
        {21, 22, 23},
        {31, 32, 33},
        {41, 42, 43},
        {51, 52, 53}};
    // 加法
    // 直接取
    printf("%d\n", arr[3][1]);
    printf("%d %d %d\n", *(&arr[0][0] + 10), *(&arr[0][1] + 9), *(&arr[0][2] + 8));
    printf("%d %d %d\n", *(&arr[1][0] + 7), *(&arr[1][1] + 6), *(&arr[1][2] + 5));
    printf("%d %d %d\n", *(&arr[2][0] + 4), *(&arr[2][1] + 3), *(&arr[2][2] + 2));
    // 以数组元素
    printf("%d %d %d %d\n", *(arr[3] + 1), *(arr[2] + 4), *(arr[1] + 7), *(arr[0] + 10));
    printf("%d %d\n", *(*(&arr[2] + 0) + 4), *(*(&arr[2] + 1) + 1));
    printf("%d %d %d\n", *(*(&arr[1] + 2) + 1), *(*(&arr[1] + 1) + 4), *(*(&arr[1] + 0) + 7));
    printf("%d %d %d %d\n", *(*(&arr[0] + 3) + 1), *(*(&arr[0] + 2) + 4), *(*(&arr[0] + 1) + 7), *(*(&arr[0] + 0) + 10));
    // 整体
    printf("%d %d %d %d\n", *(*(arr + 3) + 1), *(*(arr + 2) + 4), *(*(arr + 1) + 7), *(*(arr + 0) + 10));
    printf("========减法========");
    // 减法
    // 直接取
    printf("%d\n", arr[3][1]);
    printf("%d\n", *(&arr[3][2] - 1));
    printf("%d %d %d\n", *(&arr[4][0] - 2), *(&arr[4][1] - 3), *(&arr[4][2] - 4));
    // 以数组元素
    printf("%d\n", *(arr[4] - 2));
    printf("%d\n", *(*(&arr[4] - 1) + 1));
    // 整体
    printf("%d\n", *(*(arr + 4) - 2));
    printf("%d\n", *(*(*(&arr + 1)) - 5));
    printf("%d\n", *(*(*(&arr + 2)) - 20));
    // 一堆....
    // 还有乘法除法等等等等......
}